package com.lipuwater.agent.http.api;

import android.content.Context;

import com.lipuwater.agent.http.ApiCallBack;
import com.lipuwater.agent.http.BaseRequest;
import com.lipuwater.agent.http.HttpConfig;
import com.okhttplib.OkHttpUtils;

import java.util.Map;


/**
 * 　　　┏┓　　　┏┓
 * 　　┏┛┻━━━┛┻┓
 * 　　┃　　　　　　　┃
 * 　　┃　　　━　　　┃
 * 　　┃　┳┛　┗┳　┃
 * 　　┃　　　　　　　┃
 * 　　┃　　　┻　　　┃
 * 　　┃　　　　　　　┃
 * 　　┗━┓　　　┏━┛
 * 　　　　┃　　　┃神兽保佑
 * 　　　　┃　　　┃永无BUG！
 * 　　　　┃　　　┗━━━┓
 * 　　　　┃　　　　　　　┣┓
 * 　　　　┃　　　　　　　┏┛
 * 　　　　┗┓┓┏━┳┓┏┛
 * 　　　　　┃┫┫　┃┫┫
 * 　　　　　┗┻┛　┗┻┛
 * ━━━━━━神兽出没━━━━━━
 * Created by  Administrator  on 2017/1/4.
 * Email:924686754@qq.com
 */
public class ApiRequestsDevice {
    private static BaseRequest baseRequest = BaseRequest.getInstance();

    /**
     * 提交设备基础信息
     *
     * @param context
     * @param params
     * @param callback
     */
    public static void PostBleBasisData(Context context, Map<String, Object> params, ApiCallBack callback) {
        baseRequest.sendRequestPost(context, HttpConfig.API_ + "dsWatercleaner/postdata", params, callback, null);
    }

    /**
     * 提交设备MCU和主板编码，选填
     *
     * @param context
     * @param params
     * @param callback
     */
    public static void PostBleMcuOrMainCode(Context context, Map<String, Object> params, ApiCallBack callback) {
        baseRequest.sendRequestPost(context, HttpConfig.API_ + "dsWatercleaner/postmcu", params, callback, null);
    }

    /**
     * 获取设备主板编码
     *
     * @param context
     * @param params
     * @param callback
     */
    public static void getBleMainCode(Context context, Map<String, Object> params, ApiCallBack callback) {
        baseRequest.sendRequestPost(context, HttpConfig.API_ + "dsWatercleaner/getmainboardcode", params, callback, null);
    }

    /**
     * 获取充值剩余天数指令
     *
     * @param object
     * @param params
     * @param callback
     */
    public static void getRechargedays(Object object, Map<String, Object> params, ApiCallBack callback) {
        baseRequest.sendRequestPost(object, HttpConfig.API_ + "dsWatercleaner/getrechargedays", params, callback, null);
    }


    /**
     * 告诉服务器确认激活
     *
     * @param context
     * @param params
     * @param callback
     */
    public static void ConfirmActivate(Context context, Map<String, Object> params, ApiCallBack callback) {
        baseRequest.sendRequestPost(context, HttpConfig.API_ + "dsWatercleaner/activate", params, callback, null);
    }


    /**
     * 取消对象的所有请求
     *
     * @param object
     */
    public static void cancelRequests(Object object) {
        OkHttpUtils.getInstance().cancelTag(object);
    }
}
